PowerShell একটি অত্যন্ত শক্তিশালী টুল যা Active Directory (AD) সম্পর্কিত বিভিন্ন কাজ স্বয়ংক্রিয় (automate) করার জন্য ব্যবহৃত হয়। Active Directory এর সাথে কাজ করার জন্য Microsoft এর PowerShell Module ActiveDirectory ব্যবহার করা হয়, যা AD ব্যবস্থাপনা, ব্যবহারকারী, গ্রুপ, এবং অন্যান্য ডিরেক্টরি অবজেক্ট তৈরি, পরিবর্তন বা মুছে ফেলা সহজ করে তোলে।
এখানে কিছু জনপ্রিয় Active Directory Automation Techniques আলোচনা করা হলো।
Active Directory Module ইনস্টল করা
PowerShell-এ Active Directory এর সাথে কাজ করার জন্য প্রথমে ActiveDirectory module ইনস্টল করা প্রয়োজন।
# Active Directory module ইনস্টল করতে
Install-WindowsFeature RSAT-AD-PowerShell
উইন্ডোজ 10 বা 11 এ, RSAT (Remote Server Administration Tools) ইনস্টল করতে হবে:
# Windows 10 বা 11 এ RSAT ইনস্টল করা
Add-WindowsCapability -Online -Name "Rsat.ActiveDirectory.DomainServices.Tools"
Active Directory User Management Automation
PowerShell ব্যবহার করে Active Directory ব্যবহারকারীদের তৈরি, পরিবর্তন এবং মুছে ফেলা অটোমেট করা যায়।
1. ব্যবহারকারী তৈরি করা (Create a New User)
PowerShell দিয়ে নতুন AD ব্যবহারকারী তৈরি করার জন্য New-ADUser কমান্ড ব্যবহার করা হয়।
New-ADUser -SamAccountName "jdoe" -Name "John Doe" -GivenName "John" -Surname "Doe" -UserPrincipalName "jdoe@domain.com" -Path "OU=Users,DC=domain,DC=com" -AccountPassword (ConvertTo-SecureString "Password123" -AsPlainText -Force) -Enabled $true
এখানে -Path প্যারামিটারটি ব্যবহারকারী কোথায় তৈরি হবে (উদাহরণস্বরূপ, একটি OU বা Organizational Unit)। এছাড়াও, -AccountPassword প্যারামিটার দিয়ে নতুন ব্যবহারকারীর পাসওয়ার্ড সেট করা হয়।
2. ব্যবহারকারী পরিবর্তন করা (Modify a User)
AD ব্যবহারকারীর অ্যাট্রিবিউট পরিবর্তন করতে Set-ADUser ব্যবহার করা হয়।
Set-ADUser -Identity "jdoe" -Title "Software Engineer" -Department "IT"
এখানে, -Identity প্যারামিটার ব্যবহারকারীর ইউনিক আইডেন্টিটি নির্দেশ করে (যেমন, SamAccountName বা DistinguishedName)।
3. ব্যবহারকারী নিষ্ক্রিয় করা (Disable a User Account)
একটি ব্যবহারকারী অ্যাকাউন্ট নিষ্ক্রিয় করতে Disable-ADUser ব্যবহার করা হয়।
Disable-ADUser -Identity "jdoe"
4. ব্যবহারকারী মুছে ফেলা (Delete a User)
ব্যবহারকারী মুছে ফেলার জন্য Remove-ADUser ব্যবহার করা হয়।
Remove-ADUser -Identity "jdoe" -Confirm:$false
এখানে, -Confirm:$false ব্যবহার করলে প্রম্পট ছাড়াই ব্যবহারকারী মুছে যাবে।
Active Directory Group Management Automation
PowerShell দিয়ে AD গ্রুপ ম্যানেজমেন্টও স্বয়ংক্রিয় করা যায়। গ্রুপ তৈরি, ব্যবহারকারী যুক্ত করা, এবং গ্রুপ থেকে ব্যবহারকারী মুছে ফেলা সাধারণ কাজগুলো অটোমেট করা যায়।
1. গ্রুপ তৈরি করা (Create a New Group)
নতুন AD গ্রুপ তৈরি করতে New-ADGroup কমান্ড ব্যবহার করা হয়।
New-ADGroup -Name "HR Team" -GroupScope Global -Path "OU=Groups,DC=domain,DC=com"
2. গ্রুপে ব্যবহারকারী যুক্ত করা (Add User to a Group)
একটি ব্যবহারকারীকে একটি গ্রুপে যুক্ত করতে Add-ADGroupMember কমান্ড ব্যবহার করা হয়।
Add-ADGroupMember -Identity "HR Team" -Members "jdoe"
3. গ্রুপ থেকে ব্যবহারকারী মুছে ফেলা (Remove User from a Group)
একটি ব্যবহারকারীকে গ্রুপ থেকে মুছে ফেলতে Remove-ADGroupMember ব্যবহার করা হয়।
Remove-ADGroupMember -Identity "HR Team" -Members "jdoe" -Confirm:$false
Active Directory Reports Automation
PowerShell দিয়ে Active Directory-তে বিভিন্ন রিপোর্ট তৈরি করা এবং সেগুলোর তথ্য সংগ্রহ করা খুব সহজ। সাধারণত Get-ADUser, Get-ADGroup, Get-ADComputer ইত্যাদি কমান্ড ব্যবহার করে রিপোর্ট তৈরি করা হয়।
1. ব্যবহারকারীদের রিপোর্ট তৈরি করা (Generate User Report)
Active Directory তে সকল ব্যবহারকারীর তথ্য সংগ্রহ করতে Get-ADUser কমান্ড ব্যবহার করা হয়।
Get-ADUser -Filter * -Properties Name, Title, Department | Select-Object Name, Title, Department | Export-Csv -Path "C:\Reports\ADUsers.csv" -NoTypeInformation
এখানে, -Filter * সকল ব্যবহারকারীদের নিয়ে রিপোর্ট তৈরি করবে এবং Select-Object দ্বারা শুধুমাত্র প্রয়োজনীয় প্রপার্টি নির্বাচন করা হয়েছে। Export-Csv কমান্ড দ্বারা রিপোর্ট CSV ফাইল হিসেবে সংরক্ষণ করা হয়েছে।
2. Inactive Users Report (নিষ্ক্রিয় ব্যবহারকারীদের রিপোর্ট)
নিষ্ক্রিয় ব্যবহারকারীদের রিপোর্ট তৈরি করতে এবং তাদের তথ্য বের করতে নিচের কমান্ড ব্যবহার করা যেতে পারে।
Get-ADUser -Filter {Enabled -eq $false} -Properties Name, LastLogonDate | Select-Object Name, LastLogonDate | Export-Csv -Path "C:\Reports\InactiveUsers.csv" -NoTypeInformation
Active Directory Permission Management Automation
PowerShell দিয়ে Active Directory Permissions ম্যানেজমেন্ট স্বয়ংক্রিয় করা যায়। AD অবজেক্টে অনুমতি প্রদান বা প্রত্যাহার করার জন্য কিছু কমান্ড রয়েছে।
1. Permission Assign করা (Assign Permissions)
PowerShell দিয়ে AD অবজেক্টে ব্যবহারকারীদের অনুমতি প্রদান করতে Add-ADPermission ব্যবহার করা হয়।
Add-ADPermission -Identity "CN=JohnDoe,OU=Users,DC=domain,DC=com" -User "jdoe" -ExtendedRights "Send As"
2. Permission Remove করা (Remove Permissions)
যেকোনো AD অবজেক্ট থেকে অনুমতি প্রত্যাহার করতে Remove-ADPermission ব্যবহার করা হয়।
Remove-ADPermission -Identity "CN=JohnDoe,OU=Users,DC=domain,DC=com" -User "jdoe"
Conclusion
PowerShell Active Directory Automation একটি অত্যন্ত শক্তিশালী এবং কার্যকরী টুল, যা AD ব্যবস্থাপনা এবং সিস্টেম অ্যাডমিনিস্ট্রেশনকে সহজ এবং দক্ষ করে তোলে। ব্যবহারকারীদের তৈরি, পরিবর্তন, মুছে ফেলা, গ্রুপ ম্যানেজমেন্ট, রিপোর্ট তৈরি এবং অ্যাকাউন্টের অনুমতি নিয়ন্ত্রণ—সবকিছুই PowerShell দিয়ে স্বয়ংক্রিয় করা সম্ভব। এর মাধ্যমে সিস্টেম অ্যাডমিনিস্ট্রেটররা সিস্টেম পরিচালনা ও টাস্ক অটোমেশন করতে পারছেন সহজে এবং দ্রুত।
Read more